package com.zx.dao.goods;

import com.zx.dto.request.goods.GoodsRequestDto;
import com.zx.dto.request.order.OrderDtoRequest;
import com.zx.dto.request.specification.SpecificationReqDto;
import com.zx.dto.response.brand.BrandDto;
import com.zx.dto.response.goods.*;
import com.zx.dto.response.specification.SpecificationBrandDto;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author sunkai
 * @date 2022/7/30 0030 16:00
 * @mood zhou xun
 */
public interface GoodsMapper {

    List<GoodsImgDto> queryGoodsImg(@Param("id") Integer id);

    List<GoodsDto> queryGoods();

    GoodsDetailDto queryMerchandiseDetails(@Param("id") Integer id);

    /*通过点击类型显示规格值*/
    List<BrandDto> queryBrand(@Param("list") List<Integer> brandId, @Param("type") String type);

    List<SpecificationBrandDto> querySpecificationValue(@Param("goodsRequestDto") GoodsRequestDto goodsRequestDto);

    List<SpecificationBrandDto> querySpecification(@Param("list") List<BrandDto> brandDtoList,@Param("goodsRequestDto") GoodsRequestDto goodsRequestDto);

    /*类型查询商品list*/
    List<GoodsDto> queryGood(@Param("spec") GoodsRequestDto goodsRequestDto);

    Integer queryGoodCount(@Param("spec")GoodsRequestDto goodsRequestDto);
    //查询的商品品牌id
    List<Integer> queryGoodsBrandId(@Param("goodName") String goodName);

    //商品详情
    List<GoodsDetailDto> queryGoodDetail(@Param("list") GoodsRequestDto goodsRequestDto);

    //排序
    List<GoodsDto> goodSort(@Param("spec") GoodsRequestDto goodsRequestDto);

    List<GoodsDetailDto> queryGoodShop(@Param("id") List<Integer> orderDtoRequest);

    List<GoodsDetailDto> goodShop(@Param("orderDtoRequest") OrderDtoRequest orderDtoRequest);

}
